objects = Parser.yy.o Parser.tab.o
INCLUDE = ../include
CFLAGS = -O2

CC = gcc

.PHONY: all clean lib

all: Parser.a

Parser.a: $(objects)
	ar qcv $@ $(objects)

$(objects): %.o: %.c
	$(CC) -c -g $(CFLAGS) $< -I $(INCLUDE) -o $@

Parser.yy.c: Parser.l Parser.tab.h
	flex -o $@ $<

Parser.tab.c: Parser.y
	bison -d -o $@ $<

Parser.tab.h: Parser.tab.c

clean:
	rm -rf *.o
	rm -rf *.a
	rm -rf Parser.yy.*
	rm -rf Parser.tab.*
